1. Field of the Invention
The present invention relates generally to a computer implemented method, a computer program product, and a data processing system. More specifically, the present invention relates to a computer implemented method, a computer program product, and a data processing system for guaranteeing a single copy of a shared assembly per process in a UNIX environment.
2. Description of the Related Art
In a componentized environment a given application may be made up of many different components. Each of these components can have the same, similar, or completely different dependencies on other lower level components or assemblies. These kinds of dependencies can often result in complex and incompatible symbol resolutions within a UNIX process environment.
In a UNIX environment, once a symbol has been loaded into global space, that symbol becomes the unique definition utilized by the entire process for that symbol, regardless of any path or name of the shared assembly that the symbol resides in. Problems can occur when multiple instances of a shared assembly are drawn into the process.
If all of the instances of a shared assembly are at the same build level, then problems usually do not occur. However, in the situation where multiple distinct build levels, i.e., minor versions, of a shared assembly existing concurrently in a single process, maintaining configuration or installation procedures such that each component can each access the correct version of shared assembly for which they intend operate with becomes problematic.